<?php
 //$titre est le titre de la page, $fichier_css le css éventuel à charger (doit être dans le dossier css à la racine) 
 // et $onload un éventuel code javascript à déclencher lorsque la page est chargée.
function main_body($mysqli, $titre = "PHW", $fichier_css = "", $onload = "", $use_economica = false) {
	/* ------------------------- PARTIE PHP --------------------------*/
	test_session_piratee($mysqli); //Contre les éventuels détournements de session.
	//On vérifie que le visiteur n'est pas banni, ni par son compte ni par son adresse IP
	$query="SELECT * FROM banlist WHERE ban_ip = '{$_SERVER['REMOTE_ADDR']}'";
	if(!empty($_SESSION['login']) && is_numeric(@$_SESSION['id'])) 
		$query = $query." OR ban_userid = '".$_SESSION['id']."'";
	$ban = mysqli_query_with_error($mysqli, $query." LIMIT 1");
	if($ban->num_rows > 0) { //Si on est banni, on va vers la page banni, qui s'occupera de fermer toutes les éventuelles frames.
		header("Location: /perso/banni.php");
		exit();
	}
	//if(@$_SESSION['id'] == 1) //TODO à virer, pour déco Gab Wink
		//reset_session($mysqli);

	//Surveille les nouveautés du forum
	if(!empty($_SESSION['login'])){
		if(isset($_SESSION['new_topics']) && count($_SESSION['new_topics']) == 0) //S'il n'y a plus de nouveaux topics, on supprime le tableau.
			unset($_SESSION['new_topics']);
			
		$infos_guy = get_line_in_db($mysqli, "gens", "user_id", $_SESSION['id']);
		$result = mysqli_query_with_error($mysqli, "SELECT DISTINCT topic_id, forum_id FROM forum_posts WHERE post_time > {$infos_guy['user_lastvisit']} AND poster_id != {$_SESSION['id']}"); //On regarde s'il y a des nouveaux topics.
		if($result->num_rows > 0 && !isset($_SESSION['new_topics'])) //Si le tableau des nouveaux topics n'existe pas alors qu'il y a des nouveaux topics, on le crée.
			$_SESSION['new_topics'] = array();
		while($ligne = $result->fetch_assoc()) //Chaque topic sert de clef dans le tableau, la valeur étant le forum auquel il appartient.
			$_SESSION['new_topics']['topic_'.$ligne['topic_id'] ] = $ligne['forum_id']; //C'est la méthode la plus pratique pour retrouver un topic (accès direct) et un forum (boucle simple)

		//update lastvisit
		mysqli_query_with_error($mysqli, "UPDATE gens SET user_lastvisit='".strtotime("now")."' WHERE user_id='{$_SESSION['id']}'");
	}
	//Update des sessions
        //echo get_line_numbers($mysqli, "sessions", "session_id", session_id());
        if(isset($_SESSION['id'])){
	if(get_line_numbers($mysqli, "sessions", "session_id", session_id()) == 0){
		mysqli_query_with_error($mysqli, "INSERT INTO sessions (session_id, session_time, session_user_id) VALUES('".session_id()."', '".strtotime("now")."', '{$_SESSION['id']}')");
        }else{
            mysqli_query_with_error($mysqli, "UPDATE sessions SET session_time='".strtotime("now")."', session_user_id=".get_num($_SESSION['id'])." WHERE session_id='".session_id()."'");//get_num($_SESSION['id']) permet de retourner 0 si on est pas connecté
        }
        }
	//degomme les vieilles sessions
	mysqli_query_with_error($mysqli, "DELETE FROM sessions WHERE session_time < '".strtotime("5 minute ago")."'");
	
	//Checkage des messages privés non lus
	$new_mess_prvt = "";
	if(!empty($_SESSION['login'])) {
		 $resultg = mysqli_query_with_error($mysqli, "SELECT COUNT(*) as nb FROM privmsgs_thread_gens WHERE user_id='{$_SESSION['id']}' AND status_recept='UNREAD'")->fetch_assoc();
		 if($resultg['nb'] > 0)
			$new_mess_prvt = "<span class='notification'>".$resultg['nb']."</span>";
	} 
	

	
	/* ------------------------- HEADER, JAVASCRIPT ET BULLES --------------------------*/?>
	
	<!DOCTYPE html>
	<html lang="fr" dir="ltr">
	<head>
	<meta charset="utf-8">
	<meta http-equiv="Content-Language" content="fr">
	<meta name="language" content="fr"/>
	<title><?php echo $titre ?></title>
        <link rel='icon' type='image/png' href='/images/favicon.png' />
	<script type='text/javascript' src="/js/initialize_all_contents_page.js"></script>
	<script type="text/javascript">	function launch_on_load(){	initialize_all_contents_page(); <?php echo $onload; ?>}	</script>
	<script type='text/javascript' src="/js/menu.js"></script>
        <script type='text/javascript' src="/js/phw-lib.js"></script>
        <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js" ></script>
	<link rel="stylesheet" type="text/css" href="/css/main.css" />
	<link rel="stylesheet" type="text/css" href="/css/menu.css" />
	<link rel="stylesheet" type="text/css" href="/css/experience.css" />
	
	<?php if(empty($_SESSION['login'])){
            echo "<link rel='stylesheet' type='text/css' href='/css/formulaire.css' />";
        }
	if($fichier_css != ""){
            $fichiers=  explode(";", $fichier_css);
            foreach ($fichiers as $f){
                echo "<link rel='stylesheet' type='text/css' href='/css/".$f.".css' />";
            }
        }
	if($use_economica == true){            
            echo "<link href='http://fonts.googleapis.com/css?family=Economica:700' rel='stylesheet' type='text/css'>";
        }
        //TODO : mettre le javascript ds un fichier js.
        ?>
        
        <script>
            function masquer_popup(){
                $('#popup').fadeOut('400');
                $('#iframe_popup').attr('src','');
            }
            
            
            function afficher_popup(lien, height){
                afficher_popup(lien, height, false);
            }
            
            function afficher_popup(lien, height, fullscreen){
                if (fullscreen) { /* Si fullscreen est à true, on rempli tout l'écran. */
                    $('#popup div:first-child').css('height', '95%');
                    $('#popup div:first-child').css('width', '95%');
                } else { /* Sinon, on remet les valeurs du css (ou le height défini), afin de faire cohabiter des pop-up fullscreen et non ds les mêmes pages. TODO : à lier avec le css. */
                    $('#popup div:first-child').css('width', '682px');
                    if (height) {
                        $('#popup div:first-child').css('height', height+'px');
                    } else
                        $('#popup div:first-child').css('height', '348px');
                }
                $('#iframe_popup').attr('src',lien);
                $('#popup').fadeIn('fast');
                
            }
        </script>
	</head>
	<body onLoad='launch_on_load();'>
            <div id="popup" style="display: none">
                
			<div>
				<a href="javascript:masquer_popup()" class="quitter" title="Quitter"><img src="/images/croix_quitter.jpg"/></a>
                                <iframe id='iframe_popup'  src="" style="height:100%; width: 100%" scrolling='auto' frameborder="0"></iframe>
                                
			</div>
		</div>
	<!-- iframe invisible dans lequel seront chargées les pages de connection et de changement de langue. -->
	<iframe name="form_load" id="form_load" src="" style="display:none;" frameborder="0" border="0"> </iframe>
	<div id="bulles"></div> <!-- Bulles, au premier plan sur l'écran entier. -->
	<div id="mesureur"><!-- balise englobant toute la page et servant à la mesurer, pour caler la hauteur des bulles. -->
		<div id="header">
	
	
	
	<?php /* ------------------------- FORMULAIRE DE CONNECTION --------------------------*/
	if(empty($_SESSION['login'])) {?>
		<script type="text/javascript">function show_reponse_login(reponse) {document.getElementById("reponse_login").innerHTML = reponse;}
				function show_reponse_login_long(reponse) {alert(reponse);} </script>
		<div id="form_login">
				<div id="connexion">
				
					<form action='/perso/connect.php' method='post' id='formulaire' target='form_load'>
						<div class="espace">
							<label for="login2">Nom du joueur</label><br/>
							<input type="text" name="login2" id="login2" maxlength="20" placeholder="Votre nom"></input>
							<p><span id='reponse_login'> </span></p>
						</div>
						<div class="espace">
							<label for="motpasse">Mot de passe</label><br/>
							<input type="password" name="motpasse" placeholder="Votre mot de passe" id="motpasse" maxlength="40"></input>
							<p><a href="/perso/newmdp.php?mod=oubli">Mot de passe oublié ?</a></p>
						</div>
						<div class="espace" style="padding-top:0px;">
							<h2>Se connecter</h2>
							<input type="submit" name="connexion" value="Connexion"/><br/>
							<input type="checkbox" name="auto" id="auto" value="1"><label id="auto" for="auto">Se connecter automatiquement</label>
						</div>
					</form>
				
				</div>
				<div>
					<img id="bouton_switch_sinscrire" src="/images/formulaires/sinscrire_btn.png" title="Accéder au formulaire d'inscription"  
					onclick='parent.resize_jeu_menu(1);' style="cursor:pointer;"/>
				</div>
                </div><!-- fin de form-login-->
	<?php }
	
	
	
	/* ------------------------- TABLEAU DE BORD --------------------------*/
	else { ?>	
			<div id="tab">
				<ul id="tab_info2">
					<li id="tab_ext1" class="tab_ext"><img src="/images/site_territoire.png" title="Territoires" class="icone_classement"/><?php echo $infos_guy['nb_territoires']; ?></li>
					<li class="tab_int">
                                            <img src="/images/site_niveau.png" title="Niveaux" class="icone_classement"/><?php echo $infos_guy['game_level']; ?>
                                            <div id="survol_exp">
                                                <?php
                                                $info_user = mysqli_query_with_error($mysqli, "SELECT experience, game_level FROM gens WHERE user_id=".$_SESSION['id'])->fetch_array();
                                               
                                                $experience_dernier_niveau= how_much_xp(get_num($info_user['game_level']));
                                                //echo how_much_xp(get_num($info_user['game_level'])+1).'<br/>';
                                                $experience_juska_prochain_niveau= how_much_xp(get_num($info_user['game_level'])+1)-$experience_dernier_niveau;
                                                //echo $experience_juska_prochain_niveau;
                                                $experience_depuis_dernier_niveau=  get_num($info_user['experience'])-$experience_dernier_niveau;
                                                $pourcentage=  round(($experience_depuis_dernier_niveau/$experience_juska_prochain_niveau)*100);
                                                
                                                ?>
							<div id="experience">
                                                            
								<p class="tooltip ombre"><?php echo $experience_depuis_dernier_niveau ?>/<?php echo $experience_juska_prochain_niveau ?> PX</p>
								<div class="fleche_tooltip"></div>
								<div id="jauge" style="width:<?php echo $pourcentage ?>%"></div>
							</div>
						</div>
                                        </li>
					<li id="avatar"><a href="/perso/profil.php?id=<?php echo $infos_guy['user_id'];?>"><img src="/jeu/avatars/<?php echo $infos_guy['user_avatar']; ?>" 
						style="background:<?php echo get_color($infos_guy['couleur']); ?>; width:48px;" border="0" title="Avatar"/></a></li>
					<li>
						<ul>
							<li><strong><?php echo $infos_guy['username']; ?></strong></li>
							<li id="titre"><?php echo get_data_in_db($mysqli, "titres", "titre_id", $infos_guy['user_titre'], "titre_name"); ?></li>
						</ul>
					</li>
                                        <li class="tab_int"><img src="/images/site_hard.png" title="Points Chahut" class="icone_classement"/><?php echo $infos_guy['pt_chahut']; ?></li>
					<li id="tab_ext2" class="tab_ext"><img src="/images/site_soft.png" title="Posthunes"/><?php echo $infos_guy['posthunes']; ?></li>
				</ul>
				<ul id="switch">
					<!-- ici les deux boutons se chevauchent, du coup on fait une gym un peu étrange : on crée dans le second bouton (site uniquement) une map area avec une zone
					qui recouvre son demi-hexagone et qui réagit avec comportement associé à site uniquement, et une petite zone qui recouvre le morceau du demi-hexagone du
					bouton jeu, et qui réagit avec le comportement associé au bouton jeu, ce qui permet de rendre indetectable le chevauchement. Attention néanmoins de bien avoir
					la même chose dans les fonction onclick de bouton_switch_jeu et de la deuxième zone de map_bouton_site_only. (et si possible le même titre) -->
					<li id="jeu"><img id="bouton_switch_jeu" src="/images/jeu_btn.gif" style="background: url('/images/jeu_btn.png') no-repeat 2px 1px;" title="Accéder à la partie jeu" onclick='parent.inverse_etat_jeu(); return false;' style="cursor:pointer;"/></li>
					<li id="site_un"><img id="bouton_site_only" src="/images/site_btn.png" title="Accéder à la partie site" usemap="#map_bouton_site_only"/></li>
					<map name="map_bouton_site_only" > <area shape="poly" href="" coords="4,52,85,52,85,27,45,4,4,27"  onclick='parent.resize_jeu_menu(0); return false;' onFocus="this.blur()">
					<area shape="poly" href="" coords="47,0,89,0,89,25"  onclick='parent.inverse_etat_jeu();  return false;' title="Accéder à la partie jeu" onFocus="this.blur()"></map>
				</ul>
                                <div id="masque_page_sauf_jeu"> </div>
			</div><!-- fin de tab -->
	<?php }
		
	
	
	/* ------------------------- MENU --------------------------*/?>
		<div id="menu_large" <?php if(!empty($_SESSION['login'])) echo "style='padding-top:76px;'";?> >
				<div id="logo">
					<a href="/accueil"><img src="/images/logo_phw.png" title="Accéder à l'accueil de Post Human War"/></a>
				</div>
				<div id="lang">
					<!-- Pas de changement de langue pour l'alpha //!A <ul>
						<li class="langues"  id="uk" <?php if($_SESSION['lang'] == "en") echo"style='background-position: -97px -5px; pointer-events:none;'"; ?>><a href="/perso/changelang.php?lang=en" target="form_load"></a></li>
						<li class="langues" id="fr" <?php if($_SESSION['lang'] == "fr") echo"style='background-position: -51px -5px; pointer-events:none;'"; ?>><a href="/perso/changelang.php?lang=fr" target="form_load"></a></li>
					</ul>-->
				</div>
				<div id="menu" onmouseover='set_largeur_menu(taille_ouverture_menu);' onmouseout='timeout_en_cours_menu = setTimeout("set_largeur_menu(330);", 700);'>
					<div id="btn_menu"><img src="/images/menu.png" title="Menu"/></div>
					<div id="pann1" class="pann"></div>
					<div id="pann2" class="pann"></div>
					<div id="nav">
						<ul id="ul_menu">
							<li><a href="/accueil"><?php if($_SESSION['lang'] == "fr") echo "Accueil"; else  echo "Home";?></a><div id="fond_defaut" class="sous_menu"></div>
								<ul class="sous_menu">
									<li><a href="/accueil">Page d'accueil</a></li>
									<!-- //!A <li><a href="#">Présentation</a></li>-->
									<li><a href="/accueil/actu.php">Actualités</a></li>
									<!-- //!A <li><a href="#">FAQ</a></li>-->
								</ul>
							</li>
                                                        <li><a href="/histoire/histoire.php">Jeu</a>
								<ul class="sous_menu">
									<li><a href="/jeu/regles.php">Règles</a></li>
									<li><a href="/histoire/histoire.php">Histoire</a></li>
									<li><a href="/jeu/unites.php">Unités</a></li>
									<!-- //!A <li><a href="#">Médias</a></li>-->
								</ul>
							</li>
							<?php if(!empty($_SESSION['login'])) { /*Si on est pas logé, on ne peut pas voir le profil.*/ ?>
							<a href="/perso/profil.php?id=<?php echo $infos_guy['user_id'];?>"><li>Profil<?php echo $new_mess_prvt; ?></a>
								<ul class="sous_menu">
									<li><a href="/perso/profil.php?id=<?php echo $infos_guy['user_id'];?>">Voir mon profil</a></li>
									<li><a href="/perso/messages.php">Messagerie<?php echo $new_mess_prvt; ?></a></li>
									<li><a href="" onclick="parent.demande_deconnexion();">Se déconnecter</a></li>
								</ul>
							</li>
							<?php } ?>
							<!-- //!A <li>Boutique</li>-->
                                                        <li><a href="/perso/membres.php">Joueurs</a>
								<ul class="sous_menu">
									<!-- //!A <li><a href="#">Classement</a></li>-->
									<li><a href="/perso/membres.php">Liste des joueurs</a></li>
									<!-- //!A <li><a href="#">Pierre des donateurs</a></li>-->
								</ul>
							</li>
							<a href="/forum"><li style="border:none;">Forum</li></a>
						</ul>
					</div><!-- fin div nav -->
				</div><!-- fin div menu -->
		</div><!-- fin div menu large-->
	</div>
	<script type="text/javascript"> if(document.getElementById("tab") != null) document.getElementById("tab").style.left = (document.getElementById("menu_large").offsetLeft) + "px"; </script>
	
	 <?php	
	
}

function show_footer() { ?>
				<div id="footer">
					<p><a href="/jeu/regles.php">Règles</a> - <a href="/infos/mentions_legales.php">Mentions légales et Données personnelles</a> - <a href="/infos/CGU.php">CGU</a>
					<?php if(!empty($_SESSION['login'])) echo " - <a href='' onclick='parent.demande_deconnexion();'>Se déconnecter</a>"; ?><br/>
					© Studio Chahut - Tous droits réservés.
					</p>
				</div> <!-- fin div footer-->
			</div> <!-- fin div mesureur-->
		</body>
	</html>
<?php
}
?>
